package me.zhengjie.modules.system.mapper;

import me.zhengjie.modules.system.domain.SiteUser;
import me.zhengjie.modules.system.service.dto.SiteUserDto;
import me.zhengjie.modules.system.service.dto.SiteUserQueryCriteria;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 网站用户映射器
 *
 * @author hehui
 * @date 2021/12/23
 */
@Mapper
public interface SiteUserMapper {

    /**
     * 按主键删除
     *
     * @param id id
     * @return int
     */
    int deleteByPrimaryKey(Long id);

    /**
     * 插入
     *
     * @param record 记录
     * @return int
     */
    int insert(SiteUser record);

    /**
     * 插入选择性
     *
     * @param record 记录
     * @return int
     */
    int insertSelective(SiteUser record);

    /**
     * 选择通过主键
     *
     * @param id id
     * @return {@link SiteUser}
     */
    SiteUser selectByPrimaryKey(Long id);

    /**
     * 更新主键的选择性
     *
     * @param record 记录
     * @return int
     */
    int updateByPrimaryKeySelective(SiteUser record);

    /**
     * 更新的主键
     *
     * @param record 记录
     * @return int
     */
    int updateByPrimaryKey(SiteUser record);

    /**
     * 找到列表
     *
     * @param criteria 标准
     * @return {@link List}<{@link SiteUserDto}>
     */
    List<SiteUserDto> findList(SiteUserQueryCriteria criteria);
}